﻿using System;
using System.Threading;

namespace ConsoleAppForBox
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");
            Console.WriteLine($"参数数量：{args.Length}");
            for (int i = 0; i < args.Length; i++)
            {
                Console.WriteLine($"第 {i} 个参数：{args[i]}");
            }

            Console.WriteLine("现在请输入0~9的一个数字，并按下回车：");
            int r;
            do
            {
                var input = Console.ReadLine();
                try { r = Convert.ToInt32(input); }
                catch { r = -1; }
            } while (r < 0 || r > 9);


            Console.WriteLine("现在输入一行文字，文字将回显。此过程一直持续到输入内容为“quit”。但如果输入“loop”，则程序进入无尽循环，必须手动关闭窗口才能结束。");
            string content;
            bool loop = false;
            while(true)
            {
                if (loop)
                {
                    Thread.Sleep(100);
                }
                else
                {
                    content = Console.ReadLine();
                    Console.WriteLine(content);
                    if (content == "quit")
                        break;
                    if (content == "loop")
                        loop = true;
                }
            }

            Console.WriteLine("设置进程结束代码为最开始输入的数字。");

            Environment.ExitCode = r;
        }
    }
}
